/*Universidad el Valle de Guatemala
 * Hoja de Trabajo 4
 * 
 * Carlos Sagastume, 12113
 * Rodimiro Castañeda, 12122
 * 
 * 
 * Juan Fernando Moraflores 
 * 
 * Descripcion:
 *  Programa que permite al usuario ingresar la direccion de un archivo .txt
 * que contenga una operacion postfix y esta es resulta por medio de la utilizacion
 * ya sea de listas, arraylist o vectores.
 */
package Stack;
// Programa que selecciona la implementacion a usar dependeindo del numero que se le ingrese
// 1- Stack con Array List
// 2- Stack con vectores
// 3- Stack con Listas
public class Factory<E> {
    // se hace una llamada al factory de lista
    ListaStackFactory<iStack> ListaFactory = new ListaStackFactory<iStack>();
       public iStack<E> getStack(int opc) {
    // seleccion de la implementacion a utilizar:
	if (opc == 1)
        {
            return new ArrayListStack<E>(); //regresa ArrayList
        }
        else if (opc == 2)
        {    
             return new VectorStack<E>(); //regresa Vector
        }
       else
       {
           // se solicita la implementacion deseada de lista
           iStack<iStack> SelecciondeLista = ListaFactory.getStack();
           return (iStack)SelecciondeLista;
       }
           
           }
    
}
